Add invoice matching engine with event handling and tests - #960
Merged
Merged
Conversation
|
@OxDev-max Great news! 🎉 Based on an automated assessment of this PR, the linked Wave issue(s) no longer count against your application limits. You can now already apply to more issues while waiting for a review of this PR. Keep up the great work! 🚀 |
4 tasks
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
Add invoice matching engine with event handling and tests
What was solved
#934 — Implement invoice matching engine
Implement an invoice matching engine in the TypeScript SDK: core matching logic that reconciles invoices against payments/ledger entries, event handling for match lifecycle, and comprehensive tests. The repo already has related modules (invoiceBatchProcessor, invoice diff docs, channelReconciler) that establish patterns to follow.
Addressed:
#935 — Add SDK memory profiling tools
Add SDK memory profiling tools to the Stellar SDK: implement core memory profiling functionality (heap snapshot capture, allocation tracking, memory usage reporting), wire up proper event handling for profiling lifecycle events, and add comprehensive tests. The issue is intentionally broad, so the contribution should introduce a focused, self-contained memory profiler module plus tests, following existing SDK patterns (e.g., telemetry hooks, profile-session example) without touching unrelated code.
Addressed:
#936 — Implement batch payment optimizer
Implement a batch payment optimizer module that consolidates multiple Stellar payment operations into an optimized batch, with event handling and comprehensive tests. The issue is generic, so scope is limited to a new optimizer module plus its test file, following existing patterns in the repo (e.g., src/ammCalculator.ts, src/batchVerifier.ts, src/tests/invoiceBatchProcessor.test.ts).
Addressed:
#937 — Add SDK version migration assistant
Add an SDK version migration assistant to the Stellar SDK codebase. The issue is high-level and lacks concrete API details, so the contribution should introduce a focused migration-assistant module (likely under src/) that detects the current SDK version, maps deprecated APIs to their replacements, and surfaces actionable migration guidance, plus a corresponding test file. Scope must stay limited to the migration assistant feature itself — no unrelated refactors, dependency changes, or edits to existing modules beyond what the assistant needs to integrate.
Addressed:
Changes
src/channelReconciler.ts(modify)src/telemetryHooks.ts(modify)src/batchPaymentOptimizer.ts(create)src/batchVerifier.ts(modify)README.md(modify)Approach
Issues
Closes #934
Closes #935
Closes #936
Closes #937